'''
滚动条操作的方法：
(1)Selenium 的 WebDriver 类库中并没有直接提供对滚动条进行操作方法，但是Selenium 提供了可调用 JavaScript 脚本的方法，
所以我们可以通过 JavaScript 脚本来达到操作滚动条的目的。
(2)也可以调用鼠标和键盘操作，实现操作滚动条。
在WebDriver中，关于鼠标操作的方法封装在ActionChains类中。关于键盘操作的方法封装在Keys中。


'''
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
from time import sleep
from options import options
from service import service
dr=webdriver.Chrome(options=options,service=service)
dr.get(r'https://www.jd.com/')
# # 设置滚动条距离顶部的位置，设置为 10000（最底部）
# js_down='var action=document.documentElement.scrollTop=10000'
# dr.execute_script(js_down)
# sleep(5)
#
# # 设置滚动条距离顶部的位置，设置为 0（最顶部）
# js_up='var action=document.documentElement.scrollTop=0'
# dr.execute_script(js_up)
# sleep(5)

# 向下滚动
js_down = "window.scrollTo(0,1000)"
dr.execute_script(js_down)
sleep(3)
# 向上滚动
js_up = "window.scrollTo(0,0)"
dr.execute_script(js_up)
sleep(3)
# 向右滚动
js_right = "window.scrollTo(1000,0)"
dr.execute_script(js_right)
sleep(3)
# 向左滚动
js_left = "window.scrollTo(0,0)"
dr.execute_script(js_left)
sleep(3)

dr.quit()
